const waterQualityColorMap = {
  I: 'rgb(204, 255, 255)',
  II: 'rgb(0, 204, 255)',
  III: 'rgb(0, 255, 0)',
  IV: 'rgb(255, 255, 0)',
  V: 'rgb(255, 155, 0)',
  劣V: 'rgb(255, 0, 0)'
}

export function classifyWaterQuality(value, indicator) {
  const categories = {
    nhx: { I: 0.15, II: 0.5, III: 1.0, IV: 1.5, V: 2.0 },
    cod: { I: 15, II: 15, III: 20, IV: 30, V: 40 },
    totalN: { I: 0.2, II: 0.5, III: 1.0, IV: 1.5, V: 2.0 },
    totalP: { I: 0.02, II: 0.1, III: 0.2, IV: 0.3, V: 0.4 },
    codmn: { I: 2, II: 4, III: 6, IV: 10, V: 80 },
    suspendedSolidsMgPerL: { I: 20, II: 25, III: 30, IV: 60, V: 150 }
  }

  function getCategory(value, thresholds) {
    for (let category in thresholds) {
      if (value <= thresholds[category]) {
        return category
      }
    }
    return '劣V'
  }

  const category = getCategory(value, categories[indicator])
  return waterQualityColorMap[category]
}
